LtU Forum, Site Discussion

Paul Graham's invited talk at ILC 2003

Some Work on Arc

Hope this hasn't been posted yet.

House , hOp - the Haskell Operating System

Bored by those lemmings who use wildly popular operating systems such as the HURD?
Wondering how Arrows might improve operating system design now that monads are ho-hum?
Looking for an opportunity to write a purely functional network driver?

If this sounds familiar, hOp, and now House is the project for you!


hOp is 'Haskell on the Bare Metal' It consists of the Glasgow Haskell Compiler runtime system booting from grub. hOp was inspired by jNode and other Language/OS projects.

hOp features VGA screen text and PS2 keyboard support, House adds a PS2 mouse driver and linear framebuffer graphics support.

Reserve your copy of hOppix today!

away from interpreter hacking and toward enhancing stdlib

Andrew Kuchling writes:

I'd like to suggest that we should retarget Python's development, away from interpreter hacking and toward enhancing and expanding the standard library. The idea is simple, but has far-reaching consequences for the development process; I think that on balance the consequences would be positive. The proposal: We should deflect effort away from language changes and redirect them toward the standard library.

...

... I find the new language features added in 2.4 unimpressive and not likely to be useful to me.

Shoot-out: most annoying compiler error message

Today, I ran into a compiler error message which was hopelessly uninformative. Since I am up for something light-hearted, I thought I might as well just ask if anyone remembers his most annoying compiler message. I guess anything goes, well maybe except for the "e345: internal error message" kind of type.

Will Kodak kill Java?

More political or economical than technological - software patents again:

Kodak wins Java lawsuit

It returns to court next week to seek $1.06 billion in damages from Sun
Rochester's largest employer claimed during a three-week trial that portions of Java infringed on patents Kodak purchased from Wang Laboratories Inc. in late 1997. The patents describe a method by which a program can "ask for help" from another application to carry out certain computer-oriented functions. That's generally similar to the way Java operates, according to Kodak and other experts.
Will dinosaurs kill each other with patents? Who will be the last saur standing? I know of a three-letter acronym company (not SCO) with a huge patent base - will it subsume all the (interesting) others (de facto, if not de jure)? How will it affect the progress?

Probabilistic languages for kids?

Know any such languages? I am not sure exactly what such a language should like; I am fishing for ideas...

pLogo anyone?

patterns in qmail

You might remember qmail from the MFA trial run discussed here before.

If so you might be interested in the paper The Security Architecture of qmail by M. Hafiz, R. Johnson, R. Afandi, PLoP2004.

looking for an old conversation on Clean

I believe there was a conversation on LtU once (perhaps LtU1?) where someone was explaining World-passing style in Clean (I think it was Clean), and explained that there was some syntax for making the World-passing implicit, so that it'll just automatically thread it through for you. I've searched the archives for a while to no avail. Does anyone remember the conversation I'm referring to?

Galois: high assurance software

The ICFP 2004 program now links to the invited talks, in particular PowerPoint slides and MP3 audio for John Launchbury's excellent talk on bringing functional programming to the real world at Galois Connections.

Using continuations for web programming

The Cocoon project has introduced FlowScript. Flowscript is a
modified
version of javascript which supports continuations and is used to write web applications that span pages.



Here is an example from the site of a calculator application which uses multiple pages to request the numbers and
operator.



"In this example, the calculator function is called to start the calculator application. We'd like the sendPageAndWait function to be a special function, that takes as arguments an HTML file to be sent as response, and some optional data that needs to be placed dynamically in it. We would like sendPageAndWait to send the response page and then block the executing thread, until the user clicks on a link in the response page, which sends a request back to the server. This request resumes the processing at the point it was left, right after the call to sendPageAndWait."


function calculator()
{
  var a, b, operator;

  cocoon.sendPageAndWait("getA.html");
  a = cocoon.request.get("a");

  cocoon.sendPageAndWait("getB.html");
  b = cocoon.request.get("b");

  cocoon.sendPageAndWait("getOperator.html");
  operator = cocoon.request.get("op");

  try {
    if (operator == "plus")
      cocoon.sendPage("result.html", {result: a + b});
    else if (operator == "minus")
      cocoon.sendPage("result.html", {result: a - b});
    else if (operator == "multiply")
      cocoon.sendPage("result.html", {result: a * b});
    else if (operator == "divide")
      cocoon.sendPage("result.html", {result: a / b});
    else
      cocoon.sendPage("invalidOperator.html", {operator: operator});
  }
  catch (exception) {
    cocoon.sendPage("error.html", {message: "Operation failed: " + exception.toString()});
  }
}


XML feed